#! /usr/bin/env python

# Copyright 2020 The Defold Foundation
# Licensed under the Defold License version 1.0 (the "License"); you may not use
# this file except in compliance with the License.
#
# You may obtain a copy of the License, together with FAQs at
# https://www.defold.com/license
#
# Unless required by applicable law or agreed to in writing, software distributed
# under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
# CONDITIONS OF ANY KIND, either express or implied. See the License for the
# specific language governing permissions and limitations under the License.

import waflib.Options

def configure(conf):
    pass

def build(bld):
    particle = bld.stlib(features = 'cxx ddf',
                         includes = ['.', '../proto'],
                         proto_gen_py = True,
                         protoc_includes = '../proto',
                         target = 'particle',
                         use = 'DDF DLIB SOCKET',
                         source = 'particle.cpp ../proto/particle/particle_ddf.proto')

    bld.add_group()

    # We only need this library in the editor
    if bld.env.IS_TARGET_DESKTOP:
        o = bld.shlib(features = 'cxx ddf skip_asan',
                  includes = ['.', '../proto'],
                  target = 'particle_shared',
                  protoc_includes = '../proto',
                  use = 'DDF_NOASAN DLIB_NOASAN SOCKET PROFILE_NULL_NOASAN PLATFORM_NULL GRAPHICS_NULL_NOASAN',
                  source = 'particle.cpp ../proto/particle/particle_ddf.proto')

    bld.install_files('${PREFIX}/include/particle', 'particle.h')
    bld.install_files('${PREFIX}/share/proto', '../proto/particle/particle_ddf.proto')

    if not waflib.Options.options.skip_build_tests:
        bld.recurse('test')
